/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Clases;

import Persistencia.Estudiante;
import Persistencia.SeguimientoTelefonicoPractica;
import Persistencia.Supervisor;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.annotation.PostConstruct;
import javax.ejb.EJB;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ManagedProperty;
import javax.faces.bean.ViewScoped;
import javax.faces.context.FacesContext;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import negocio.EstudianteInterface;
import negocio.SeguimientoTelefonicoInterface;

/**
 *
 * @author BATAQUERO
 */
@ManagedBean
@ViewScoped
public class FSeguimTelefonicoPrac implements Formato {
    private SeguimientoTelefonicoPractica seguimientoTelefonicoPractica = new SeguimientoTelefonicoPractica();
    @EJB
    private SeguimientoTelefonicoInterface seguimientoTelefonicoInterface;
    private EstudianteInterface estudianteInterface;
    private List<Estudiante> listaEstudiantes;
    private String estudianteSelected;
    @ManagedProperty(value = "#{sessionBean}")
    private SessionBean sessionBean;

    public FSeguimTelefonicoPrac() {
    }

    @PostConstruct
    public void InicializarVariables() {
        try {
            InitialContext ctx = new InitialContext();
            estudianteInterface = (EstudianteInterface) ctx.lookup("EstudianteEJB");
            listaEstudiantes = estudianteInterface.listarEstudiantes();
        } catch (NamingException ex) {
            Logger.getLogger(FResumenSemPracticaProf.class.getName()).log(Level.SEVERE, null, ex);
        }

    }

    public String ejecutarConsultar() {
        return "";
    }

    public String ejecutarDiligenciar() {
        ConsultarFormato();
        return "";
    }

    @Override
    public void ConsultarFormato() {
       

    }

    @Override
    public void DiligenciarFormato() {
        try {
       
            Supervisor supervisor = new Supervisor(sessionBean.getUsuarioSession().getIdUsuario());
            
            Estudiante estudiante = new Estudiante(Integer.parseInt(estudianteSelected));
            seguimientoTelefonicoPractica.setIdEstudiante(estudianteInterface.consultarEstudiante(estudiante.getIdEstudiante()));
            seguimientoTelefonicoPractica.setIdSeguimientosTelefonico(seguimientoTelefonicoInterface.obtenerMaxId());
            seguimientoTelefonicoPractica.setIdSupervisor(supervisor);
            seguimientoTelefonicoInterface.crear(seguimientoTelefonicoPractica);
            
            
        } catch (Exception e) {
            FacesMessage facesMessage = new FacesMessage("Error");
            FacesContext.getCurrentInstance().addMessage(null, facesMessage);
        }
    }

    @Override
    public void AprobarFormato() {
        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    }

    @Override
    public void EditarFormato() {
        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    }

    public SeguimientoTelefonicoPractica getSeguimientoTelefonicoPractica() {
        return seguimientoTelefonicoPractica;
    }

    public void setSeguimientoTelefonicoPractica(SeguimientoTelefonicoPractica seguimientoTelefonicoPractica) {
        this.seguimientoTelefonicoPractica = seguimientoTelefonicoPractica;
    }

    public List<Estudiante> getListaEstudiantes() {
        return listaEstudiantes;
    }

    public void setListaEstudiantes(List<Estudiante> listaEstudiantes) {
        this.listaEstudiantes = listaEstudiantes;
    }

    public String getEstudianteSelected() {
        return estudianteSelected;
    }

    public void setEstudianteSelected(String estudianteSelected) {
        this.estudianteSelected = estudianteSelected;
    }

    public SessionBean getSessionBean() {
        return sessionBean;
    }

    public void setSessionBean(SessionBean sessionBean) {
        this.sessionBean = sessionBean;
    }
    
}
